package com.by.controller;

import com.by.bean.ResultBean;

/**
 * date 2025/2/14 17:46
 * author bjj
 * decoration
 * version 1.0
 * since jdk11
 */
@SuppressWarnings("all")
public class BaseController {
    /**
     * 请求成功
     *
     * @param msg  成功的消息
     * @param data 数据
     * @return
     */
    protected ResultBean success(String msg, Object data) {
        return handler(ApiCode.SUCCESS, msg, data);
    }

    /**
     * 请求成功
     *
     * @param msg 成功的消息
     * @return
     */
    protected ResultBean success(String msg) {
        return handler(ApiCode.SUCCESS, msg, null);
    }

    /**
     * 请求失败
     *
     * @param msg  失败的消息
     * @param data 数据
     * @return
     */
    protected ResultBean fail(String msg, Object data) {
        return handler(ApiCode.FAIL, msg, data);
    }

    /**
     * 请求失败
     *
     * @param msg 失败的消息
     * @return
     */
    protected ResultBean fail(String msg) {
        return handler(ApiCode.FAIL, msg, null);
    }

    /**
     * 请求处理
     *
     * @param code 状态码
     * @param msg  消息
     * @param data 数据
     * @return
     */
    private ResultBean handler(int code, String msg, Object data) {
        return new ResultBean(code, msg, data);
    }

    /**
     * 保存结果
     *
     * @param rs
     * @return
     */
    protected ResultBean saveResult(int rs) {
        return rs == 1 ? success("保存成功") : fail("保存失败");
    }

    /**
     * 修改结果
     *
     * @param rs
     * @return
     */
    protected ResultBean updateResult(int rs) {
        return rs == 1 ? success("修改成功") : fail("修改失败");
    }



    /**
     * 删除结果
     *
     * @param rs 执行状态（1 表示成功）
     * @return 统一返回结果
     */
    protected ResultBean deleteResult(int rs) {
        return rs == 1 ? success("删除成功") : fail("删除失败");
    }

}
